home *** CD-ROM | disk | FTP | other *** search
- MODULE y;
- FROM Objects IMPORT ALLOCATEOBJECT;
- FROM InOut IMPORT WriteString, WriteLn;
- FROM People IMPORT Programmer;
- FROM MyKindOfProgrammers IMPORT Modula2Programmer;
-
- CLASS CProgrammer;
- INHERIT Programmer;
- END CProgrammer;
-
- VAR m2programmer :Modula2Programmer;
- cprogrammer :CProgrammer;
-
- PROCEDURE ifIsSmart( p :Programmer; s :ARRAY OF CHAR );
- BEGIN
- IF p.isSmart() THEN
- WriteString( s ); WriteLn;
- END;
- END ifIsSmart;
-
- BEGIN
- NEW( m2programmer );
- NEW( cprogrammer );
- ifIsSmart( m2programmer, "1st m2 programmer is smart" );
- ifIsSmart( cprogrammer, "1st C programmer is smart" );
- m2programmer.favoriteLanguage := "C";
- cprogrammer.favoriteLanguage := "Modula-2";
- ifIsSmart( m2programmer, "2nd m2 programmer is smart" );
- ifIsSmart( cprogrammer, "2nd C programmer is smart" );
- END y.